home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #11 / Amiga Plus CD - 2002 - No. 11.iso / Tools / Development / PowerD / mmu / modules / libraries / disassembler.m < prev   
Encoding:
Text File  |  2002-10-28  |  2.3 KB  |  46 lines

  1. /*************************************************************************
  2.  ** disassembler.library                                                **
  3.  **                                                                     **
  4.  ** a simple system library for disassembling a86K binaries             **
  5.  **                                                                     **
  6.  ** © 1999 THOR-Software, Thomas Richter                                **
  7.  ** No commercial use, reassembly, modification without prior, written  **
  8.  ** permission of the authors.                                          **
  9.  ** Including this library in any commercial software REQUIRES a        **
  10.  ** written permission and the payment of a small fee.                  **
  11.  **                                                                     **
  12.  **---------------------------------------------------------------------**
  13.  ** Definition of the library, and structures                           **
  14.  **                 **
  15.  ** $VER: 40.2 (31.10.99) © THOR                            **
  16.  *************************************************************************/
  17. #ifndef LIBRARIES_DISASSEMBLER_M
  18. #define LIBRARIES_DISASSEMBLER_M 
  19. MODULE 'exec/libraries'
  20. /* There's really nothing in this library base you need to care about */
  21. OBJECT DisassemblerBase
  22.   Library:Library     /* more below this point */
  23.  
  24. #define DISASSEMBLER_NAME 'disassembler.library'
  25. /* The one and only structure you need to care about. This one is
  26.    passed in to Disassemble() */
  27. OBJECT DisData
  28.   From:APTR,               /* base to start disassembly from */
  29.   UpTo:APTR,               /* where to stop it */
  30.   PC:APTR,                 /* the disassembler prints a "*" here */
  31.   PutProc:VOID,    /* to avoid casts, this is a void *. */
  32.   UserData:APTR,           /* passed to the PutProc in a1 and a3 */
  33.   UserBase:APTR,           /* passed to the PutProc in a4 */
  34.   Truncate:UWORD,         /* limit width of the output */
  35.   reserved:UWORD          /* this is currently reserved */
  36.  
  37. /* PutProc is actually a function pointer, but due to different compilers
  38.    and conventions defined here as a void *. It is called with the
  39.    character to print in d0, the user data in a1 and a3 and the user
  40.    base in a4. This is most useful for C code.
  41.  
  42.    The library functions are interrupt-callable, provided your PutProc
  43.    is.
  44. */
  45. #endif
  46.